package com.fxkj.cloud.drms.domain.commandSettingHistory.service;

import com.fxkj.cloud.drms.domain.commandSettingHistory.CommandSettingHistoryDomain;
import com.fxkj.common.exception.FxException;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.UUID;

/**
 * <p>description: </p>
 *
 * @author ww
 * @date 2025-03-25 11:05:54
 */
public interface CommandSettingHistoryDomainService {

    CommandSettingHistoryDomain save(CommandSettingHistoryDomain commandSettingHistoryDomain);

    List<CommandSettingHistoryDomain> saveAll(List<CommandSettingHistoryDomain> commandSettingHistoryDomains);

    CommandSettingHistoryDomain findById(UUID id, UUID organizationId);

    Page<CommandSettingHistoryDomain> page(Integer page, Integer size, UUID deviceId, Integer attributeType, Long startTime, Long endTime, String deviceName, String username, UUID organizationId);

    List<CommandSettingHistoryDomain> list(UUID organizationId);

    void delete(List<UUID> ids, UUID organizationId) throws FxException;

    List<CommandSettingHistoryDomain> getLatestCommandSettingHistoryKv(UUID deviceId, List<String> attributeKeys, UUID organizationId);
}
